// pages/addScenic/addScenic.js
const http = require('../../api/index.js')
Page({

  /**
   * 页面的初始数据
   */
  data: {
    scenicName:"",
    address: "", //营地位置
    latitude: 0, //维度
    longitude: 0, //经度
    campId:"",
    scenicId:"" //景点id
  },
  // 营地位置
  toCampLocation() {
    // wx.navigateTo({
    //   url: '/pages/campLocation/campLocation',
    // })
    // 检查用户权限状态
    wx.getSetting({
      success: (res) => {
        if (!res.authSetting['scope.userLocation']) {
          // 用户尚未授权或已拒绝授权
          // 主动请求授权
          this.requestLocationAuthorization();
        } else {
          // 已经授权，直接获取位置信息
          this.getUserLocation();
        }
      }
    });
  },
  requestLocationAuthorization() {
    // 请求用户授权位置信息
    wx.authorize({
      scope: 'scope.userLocation',
      success: () => {
        this.getUserLocation();
      },
      fail: (err) => {
        console.error('授权失败:', err);
        // 如果用户拒绝了授权，可以进一步提示用户去设置中手动开启
        this.showSettingPrompt();
      }
    });
  },
  showSettingPrompt() {
    // 提示用户去设置中开启位置权限
    wx.showModal({
      title: '需要位置权限',
      content: '请在设置中开启位置权限以正常使用本功能。',
      showCancel: false,
      confirmText: '去设置',
      success: (res) => {
        if (res.confirm) {
          wx.openSetting({
            success: (settingRes) => {
              if (settingRes.authSetting['scope.userLocation']) {
                // 用户在设置中开启了位置权限
                this.getUserLocation();
              } else {
                // 用户仍然拒绝位置权限
                console.log('用户仍未开启位置权限');
              }
            },
          });
        }
      },
    });
  },
  getUserLocation() {
    wx.getLocation({
      // type: 'wgs84',
      type: 'gcj02',
      success: (res) => {
        // console.log(res, "返回的数据")
        this.setData({
          latitude: res.latitude,
          longitude: res.longitude,
        });
        wx.chooseLocation({
          longitude: this.data.longitude,
          latitude: this.data.latitude,
          success: (res) => {
            // console.log(res, '########');
            this.setData({
              latitude: res.latitude,
              longitude: res.longitude,
              address: res.address
            });
          }
        })
      },
      fail: (err) => {
        console.error('获取位置失败:', err);
      },
      complete: () => {
        console.log('位置获取操作已完成');
      }
    });
  },
  //审核
  toExamine(){
    http.addScenic(this.data).then(res=>{
      wx.showToast({
        title: '添加成功待审核',
        icon: 'success',
        duration: 1000
      })
      setTimeout(()=>{        
        // 返回到上一页
        wx.navigateBack({
          delta: 1,
        })
      },1000)
    })
  },
  // 获取景点详情
  getScenicInfo(){
    http.getScenicDetail(this.data.scenicId).then(res=>{
      this.setData({
        scenicName:res.data.scenicName,
        address: res.data.address,
        latitude: res.data.latitude,
        longitude: res.data.longitude
      })
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    this.setData({
      campId: options.campId,
      scenicId: options.scenicId
    })
    this.getScenicInfo()
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})